43d521e8da84e471dc0817d29d339fbf7085be51,src/main/java/ldbc/snb/datagen/hadoop/HadoopMergeFriendshipFiles.java,HadoopMergeFriendshipFilesReducer,reduce,#TupleKey#Iterable#Context#,41
Before Change
person = new Person(p);
} else {
for ( Knows k : p.knows() ) {
person.knows().add(k);
}
}
index++;
After Change
public void reduce(TupleKey key, Iterable<Person> valueSet,Context context)
throws IOException, InterruptedException {
ArrayList<Knows> knows = new ArrayList<Knows>();
Person person = null;
int index = 0;
for ( Person p : valueSet) {
if( index == 0 ) {
person = new Person(p);
}
for(Knows k : p.knows()) {
knows.add(k);
}
index++;
}
person.knows().clear();
Knows.FullComparator comparator = new Knows.FullComparator();
Collections.sort(knows, comparator);
if(knows.size() > 0 ) {
long currentTo = knows.get(0).to().accountId();
person.knows().add(knows.get(0));
for (index = 1; index < knows.size(); ++index) {
Knows nextKnows = knows.get(index);
if(currentTo != knows.get(index).to().accountId()) {
person.knows().add(nextKnows);
currentTo = nextKnows.to().accountId();
} else {
numRepeated++;
}